// ajax.js

// 引入 uni-ajax 模块
import ajax from 'uni-ajax'
import {Toast, ToastError} from "@/utils/toast";
import {getBaseApi} from "@/utils/domain";

export const getRequest = () => {
    // 创建请求实例
    const request = ajax.create({
        // 初始配置
        baseURL: getBaseApi()
    })
    // 添加请求拦截器 
    request.interceptors.request.use(
        config => {
            // console.log("拦截", config)
            // 在发送请求前做些什么
            return config
        },
        error => {
            // 对请求错误做些什么
            return Promise.reject(error)
        }
    )

    // 添加响应拦截器
    request.interceptors.response.use(
        response => {
            // console.log(response, "resp")
            if (response.statusCode != 200) {
                if (response.statusCode == 401) {
                    Toast(`请先登录：${response.statusCode}`)
                } else {
                    Toast(`请求错误：状态码${response.statusCode}`)
                }
            } else {
                if (response.data) {
                    if (response.data['code'] != 1) {
                        ToastError(`${response.data['msg']}`)
                    }
                }
            }
            // 对响应数据做些什么
            return response
        },
        error => {
            // 对响应错误做些什么
            return Promise.reject(error)
        }
    )

    return request
}

